package com.xqboss.apps.domain.equipment;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.xqboss.apps.domain.BaseTable;
import com.xqboss.apps.enums.equipment.EquipmentUpgradeRecordTypeEnum;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.math.BigDecimal;

@Data
public class EquipmentUpgradeRecord extends BaseTable {

    private static final long serialVersionUID = 1L;

    /**
     * 主键ID
     */
    @TableId(type = IdType.AUTO)
    private Long id;

    /**
     * 用户ID
     */
    @ApiModelProperty(name = "用户ID")
    private Long userId;

    /**
     * 用户藏品ID
     */
    @ApiModelProperty(name = "用户藏品ID")
    private Long userNftId;

    /**
     * 藏品ID
     */
    @ApiModelProperty(name = "藏品ID")
    private Long nftId;

    /**
     * 藏品编号ID
     */
    @ApiModelProperty(name = "藏品编号ID")
    private Long nftNumberId;

    /**
     * 装备ID
     */
    @ApiModelProperty(name = "装备ID")
    private Long equipmentId;

    /**
     * 升级配置ID
     */
    @ApiModelProperty(name = "升级配置ID")
    private Long upgradeConfigId;

    /**
     * 加点数量
     */
    @ApiModelProperty(name = "加点数量")
    private Integer addAttribute;

    /**
     * 花费热豆数量
     */
    @ApiModelProperty(name = "花费热豆数量")
    private BigDecimal integralExpend;

    @ApiModelProperty(name = "折扣热豆数量")
    private BigDecimal discountIntegralExpend;

    /**
     * 幸运值加点
     */
    @ApiModelProperty(name = "幸运值加点")
    private Integer luck;

    /**
     * 天赋值加点
     */
    @ApiModelProperty(name = "天赋值加点")
    private Integer talent;

    /**
     * 耐久值加点
     */
    @ApiModelProperty(name = "耐久值加点")
    private Integer durable;

    /**
     * 坚固值加点
     */
    @ApiModelProperty(name = "坚固值加点")
    private Integer strong;

    /**
     * 升级前等级
     */
    @ApiModelProperty(name = "升级前等级")
    private Integer levelBefore;

    /**
     * 升级后等级
     */
    @ApiModelProperty(name = "升级后等级")
    private Integer levelAfter;

    /**
     * 旧装备信息
     */
    @ApiModelProperty(name = "旧装备信息")
    private String equipmentBefore;

    /**
     * 新装备信息
     */
    @ApiModelProperty(name = "新装备信息")
    private String equipmentAfter;


    @ApiModelProperty(name = "升级类型")
    private EquipmentUpgradeRecordTypeEnum type;

    @ApiModelProperty(name = "是否突破成功 0否 1是")
    private Boolean isBreak;

}
